{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# 4.1　图表样式概述"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 4.1.1　默认图表样式"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {
    "scrolled": true
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "RcParams({'_internal.classic_mode': False,\n",
       "          'agg.path.chunksize': 0,\n",
       "          'animation.avconv_args': [],\n",
       "          'animation.avconv_path': 'avconv',\n",
       "          'animation.bitrate': -1,\n",
       "          'animation.codec': 'h264',\n",
       "          'animation.convert_args': [],\n",
       "          'animation.convert_path': 'convert',\n",
       "          'animation.embed_limit': 20.0,\n",
       "          'animation.ffmpeg_args': [],\n",
       "          'animation.ffmpeg_path': 'ffmpeg',\n",
       "          'animation.frame_format': 'png',\n",
       "          'animation.html': 'none',\n",
       "          'animation.html_args': [],\n",
       "          'animation.writer': 'ffmpeg',\n",
       "          'axes.autolimit_mode': 'data',\n",
       "          'axes.axisbelow': 'line',\n",
       "          'axes.edgecolor': 'black',\n",
       "          'axes.facecolor': 'white',\n",
       "          'axes.formatter.limits': [-5, 6],\n",
       "          'axes.formatter.min_exponent': 0,\n",
       "          'axes.formatter.offset_threshold': 4,\n",
       "          'axes.formatter.use_locale': False,\n",
       "          'axes.formatter.use_mathtext': False,\n",
       "          'axes.formatter.useoffset': True,\n",
       "          'axes.grid': False,\n",
       "          'axes.grid.axis': 'both',\n",
       "          'axes.grid.which': 'major',\n",
       "          'axes.labelcolor': 'black',\n",
       "          'axes.labelpad': 4.0,\n",
       "          'axes.labelsize': 'medium',\n",
       "          'axes.labelweight': 'normal',\n",
       "          'axes.linewidth': 0.8,\n",
       "          'axes.prop_cycle': cycler('color', ['#1f77b4', '#ff7f0e', '#2ca02c', '#d62728', '#9467bd', '#8c564b', '#e377c2', '#7f7f7f', '#bcbd22', '#17becf']),\n",
       "          'axes.spines.bottom': True,\n",
       "          'axes.spines.left': True,\n",
       "          'axes.spines.right': True,\n",
       "          'axes.spines.top': True,\n",
       "          'axes.titlecolor': 'auto',\n",
       "          'axes.titlelocation': 'center',\n",
       "          'axes.titlepad': 6.0,\n",
       "          'axes.titlesize': 'large',\n",
       "          'axes.titleweight': 'normal',\n",
       "          'axes.titley': None,\n",
       "          'axes.unicode_minus': True,\n",
       "          'axes.xmargin': 0.05,\n",
       "          'axes.ymargin': 0.05,\n",
       "          'axes3d.grid': True,\n",
       "          'backend': 'Qt5Agg',\n",
       "          'backend_fallback': True,\n",
       "          'boxplot.bootstrap': None,\n",
       "          'boxplot.boxprops.color': 'black',\n",
       "          'boxplot.boxprops.linestyle': '-',\n",
       "          'boxplot.boxprops.linewidth': 1.0,\n",
       "          'boxplot.capprops.color': 'black',\n",
       "          'boxplot.capprops.linestyle': '-',\n",
       "          'boxplot.capprops.linewidth': 1.0,\n",
       "          'boxplot.flierprops.color': 'black',\n",
       "          'boxplot.flierprops.linestyle': 'none',\n",
       "          'boxplot.flierprops.linewidth': 1.0,\n",
       "          'boxplot.flierprops.marker': 'o',\n",
       "          'boxplot.flierprops.markeredgecolor': 'black',\n",
       "          'boxplot.flierprops.markeredgewidth': 1.0,\n",
       "          'boxplot.flierprops.markerfacecolor': 'none',\n",
       "          'boxplot.flierprops.markersize': 6.0,\n",
       "          'boxplot.meanline': False,\n",
       "          'boxplot.meanprops.color': 'C2',\n",
       "          'boxplot.meanprops.linestyle': '--',\n",
       "          'boxplot.meanprops.linewidth': 1.0,\n",
       "          'boxplot.meanprops.marker': '^',\n",
       "          'boxplot.meanprops.markeredgecolor': 'C2',\n",
       "          'boxplot.meanprops.markerfacecolor': 'C2',\n",
       "          'boxplot.meanprops.markersize': 6.0,\n",
       "          'boxplot.medianprops.color': 'C1',\n",
       "          'boxplot.medianprops.linestyle': '-',\n",
       "          'boxplot.medianprops.linewidth': 1.0,\n",
       "          'boxplot.notch': False,\n",
       "          'boxplot.patchartist': False,\n",
       "          'boxplot.showbox': True,\n",
       "          'boxplot.showcaps': True,\n",
       "          'boxplot.showfliers': True,\n",
       "          'boxplot.showmeans': False,\n",
       "          'boxplot.vertical': True,\n",
       "          'boxplot.whiskerprops.color': 'black',\n",
       "          'boxplot.whiskerprops.linestyle': '-',\n",
       "          'boxplot.whiskerprops.linewidth': 1.0,\n",
       "          'boxplot.whiskers': 1.5,\n",
       "          'contour.corner_mask': True,\n",
       "          'contour.linewidth': None,\n",
       "          'contour.negative_linestyle': 'dashed',\n",
       "          'datapath': 'C:\\\\Users\\\\admin\\\\AppData\\\\Roaming\\\\Python\\\\Python38\\\\site-packages\\\\matplotlib\\\\mpl-data',\n",
       "          'date.autoformatter.day': '%Y-%m-%d',\n",
       "          'date.autoformatter.hour': '%m-%d %H',\n",
       "          'date.autoformatter.microsecond': '%M:%S.%f',\n",
       "          'date.autoformatter.minute': '%d %H:%M',\n",
       "          'date.autoformatter.month': '%Y-%m',\n",
       "          'date.autoformatter.second': '%H:%M:%S',\n",
       "          'date.autoformatter.year': '%Y',\n",
       "          'date.epoch': '1970-01-01T00:00:00',\n",
       "          'docstring.hardcopy': False,\n",
       "          'errorbar.capsize': 0.0,\n",
       "          'figure.autolayout': False,\n",
       "          'figure.constrained_layout.h_pad': 0.04167,\n",
       "          'figure.constrained_layout.hspace': 0.02,\n",
       "          'figure.constrained_layout.use': False,\n",
       "          'figure.constrained_layout.w_pad': 0.04167,\n",
       "          'figure.constrained_layout.wspace': 0.02,\n",
       "          'figure.dpi': 100.0,\n",
       "          'figure.edgecolor': 'white',\n",
       "          'figure.facecolor': 'white',\n",
       "          'figure.figsize': [6.4, 4.8],\n",
       "          'figure.frameon': True,\n",
       "          'figure.max_open_warning': 20,\n",
       "          'figure.raise_window': True,\n",
       "          'figure.subplot.bottom': 0.11,\n",
       "          'figure.subplot.hspace': 0.2,\n",
       "          'figure.subplot.left': 0.125,\n",
       "          'figure.subplot.right': 0.9,\n",
       "          'figure.subplot.top': 0.88,\n",
       "          'figure.subplot.wspace': 0.2,\n",
       "          'figure.titlesize': 'large',\n",
       "          'figure.titleweight': 'normal',\n",
       "          'font.cursive': ['Apple Chancery',\n",
       "                           'Textile',\n",
       "                           'Zapf Chancery',\n",
       "                           'Sand',\n",
       "                           'Script MT',\n",
       "                           'Felipa',\n",
       "                           'cursive'],\n",
       "          'font.family': ['sans-serif'],\n",
       "          'font.fantasy': ['Comic Neue',\n",
       "                           'Comic Sans MS',\n",
       "                           'Chicago',\n",
       "                           'Charcoal',\n",
       "                           'ImpactWestern',\n",
       "                           'Humor Sans',\n",
       "                           'xkcd',\n",
       "                           'fantasy'],\n",
       "          'font.monospace': ['DejaVu Sans Mono',\n",
       "                             'Bitstream Vera Sans Mono',\n",
       "                             'Computer Modern Typewriter',\n",
       "                             'Andale Mono',\n",
       "                             'Nimbus Mono L',\n",
       "                             'Courier New',\n",
       "                             'Courier',\n",
       "                             'Fixed',\n",
       "                             'Terminal',\n",
       "                             'monospace'],\n",
       "          'font.sans-serif': ['DejaVu Sans',\n",
       "                              'Bitstream Vera Sans',\n",
       "                              'Computer Modern Sans Serif',\n",
       "                              'Lucida Grande',\n",
       "                              'Verdana',\n",
       "                              'Geneva',\n",
       "                              'Lucid',\n",
       "                              'Arial',\n",
       "                              'Helvetica',\n",
       "                              'Avant Garde',\n",
       "                              'sans-serif'],\n",
       "          'font.serif': ['DejaVu Serif',\n",
       "                         'Bitstream Vera Serif',\n",
       "                         'Computer Modern Roman',\n",
       "                         'New Century Schoolbook',\n",
       "                         'Century Schoolbook L',\n",
       "                         'Utopia',\n",
       "                         'ITC Bookman',\n",
       "                         'Bookman',\n",
       "                         'Nimbus Roman No9 L',\n",
       "                         'Times New Roman',\n",
       "                         'Times',\n",
       "                         'Palatino',\n",
       "                         'Charter',\n",
       "                         'serif'],\n",
       "          'font.size': 10.0,\n",
       "          'font.stretch': 'normal',\n",
       "          'font.style': 'normal',\n",
       "          'font.variant': 'normal',\n",
       "          'font.weight': 'normal',\n",
       "          'grid.alpha': 1.0,\n",
       "          'grid.color': '#b0b0b0',\n",
       "          'grid.linestyle': '-',\n",
       "          'grid.linewidth': 0.8,\n",
       "          'hatch.color': 'black',\n",
       "          'hatch.linewidth': 1.0,\n",
       "          'hist.bins': 10,\n",
       "          'image.aspect': 'equal',\n",
       "          'image.cmap': 'viridis',\n",
       "          'image.composite_image': True,\n",
       "          'image.interpolation': 'antialiased',\n",
       "          'image.lut': 256,\n",
       "          'image.origin': 'upper',\n",
       "          'image.resample': True,\n",
       "          'interactive': False,\n",
       "          'keymap.all_axes': ['a'],\n",
       "          'keymap.back': ['left', 'c', 'backspace', 'MouseButton.BACK'],\n",
       "          'keymap.copy': ['ctrl+c', 'cmd+c'],\n",
       "          'keymap.forward': ['right', 'v', 'MouseButton.FORWARD'],\n",
       "          'keymap.fullscreen': ['f', 'ctrl+f'],\n",
       "          'keymap.grid': ['g'],\n",
       "          'keymap.grid_minor': ['G'],\n",
       "          'keymap.help': ['f1'],\n",
       "          'keymap.home': ['h', 'r', 'home'],\n",
       "          'keymap.pan': ['p'],\n",
       "          'keymap.quit': ['ctrl+w', 'cmd+w', 'q'],\n",
       "          'keymap.quit_all': [],\n",
       "          'keymap.save': ['s', 'ctrl+s'],\n",
       "          'keymap.xscale': ['k', 'L'],\n",
       "          'keymap.yscale': ['l'],\n",
       "          'keymap.zoom': ['o'],\n",
       "          'legend.borderaxespad': 0.5,\n",
       "          'legend.borderpad': 0.4,\n",
       "          'legend.columnspacing': 2.0,\n",
       "          'legend.edgecolor': '0.8',\n",
       "          'legend.facecolor': 'inherit',\n",
       "          'legend.fancybox': True,\n",
       "          'legend.fontsize': 'medium',\n",
       "          'legend.framealpha': 0.8,\n",
       "          'legend.frameon': True,\n",
       "          'legend.handleheight': 0.7,\n",
       "          'legend.handlelength': 2.0,\n",
       "          'legend.handletextpad': 0.8,\n",
       "          'legend.labelspacing': 0.5,\n",
       "          'legend.loc': 'best',\n",
       "          'legend.markerscale': 1.0,\n",
       "          'legend.numpoints': 1,\n",
       "          'legend.scatterpoints': 1,\n",
       "          'legend.shadow': False,\n",
       "          'legend.title_fontsize': None,\n",
       "          'lines.antialiased': True,\n",
       "          'lines.color': 'C0',\n",
       "          'lines.dash_capstyle': 'butt',\n",
       "          'lines.dash_joinstyle': 'round',\n",
       "          'lines.dashdot_pattern': [6.4, 1.6, 1.0, 1.6],\n",
       "          'lines.dashed_pattern': [3.7, 1.6],\n",
       "          'lines.dotted_pattern': [1.0, 1.65],\n",
       "          'lines.linestyle': '-',\n",
       "          'lines.linewidth': 1.5,\n",
       "          'lines.marker': 'None',\n",
       "          'lines.markeredgecolor': 'auto',\n",
       "          'lines.markeredgewidth': 1.0,\n",
       "          'lines.markerfacecolor': 'auto',\n",
       "          'lines.markersize': 6.0,\n",
       "          'lines.scale_dashes': True,\n",
       "          'lines.solid_capstyle': 'projecting',\n",
       "          'lines.solid_joinstyle': 'round',\n",
       "          'markers.fillstyle': 'full',\n",
       "          'mathtext.bf': 'sans:bold',\n",
       "          'mathtext.cal': 'cursive',\n",
       "          'mathtext.default': 'it',\n",
       "          'mathtext.fallback': 'cm',\n",
       "          'mathtext.fallback_to_cm': None,\n",
       "          'mathtext.fontset': 'dejavusans',\n",
       "          'mathtext.it': 'sans:italic',\n",
       "          'mathtext.rm': 'sans',\n",
       "          'mathtext.sf': 'sans',\n",
       "          'mathtext.tt': 'monospace',\n",
       "          'mpl_toolkits.legacy_colorbar': True,\n",
       "          'patch.antialiased': True,\n",
       "          'patch.edgecolor': 'black',\n",
       "          'patch.facecolor': 'C0',\n",
       "          'patch.force_edgecolor': False,\n",
       "          'patch.linewidth': 1.0,\n",
       "          'path.effects': [],\n",
       "          'path.simplify': True,\n",
       "          'path.simplify_threshold': 0.111111111111,\n",
       "          'path.sketch': None,\n",
       "          'path.snap': True,\n",
       "          'pcolor.shading': 'flat',\n",
       "          'pdf.compression': 6,\n",
       "          'pdf.fonttype': 3,\n",
       "          'pdf.inheritcolor': False,\n",
       "          'pdf.use14corefonts': False,\n",
       "          'pgf.preamble': '',\n",
       "          'pgf.rcfonts': True,\n",
       "          'pgf.texsystem': 'xelatex',\n",
       "          'polaraxes.grid': True,\n",
       "          'ps.distiller.res': 6000,\n",
       "          'ps.fonttype': 3,\n",
       "          'ps.papersize': 'letter',\n",
       "          'ps.useafm': False,\n",
       "          'ps.usedistiller': None,\n",
       "          'savefig.bbox': None,\n",
       "          'savefig.directory': '~',\n",
       "          'savefig.dpi': 'figure',\n",
       "          'savefig.edgecolor': 'auto',\n",
       "          'savefig.facecolor': 'auto',\n",
       "          'savefig.format': 'png',\n",
       "          'savefig.jpeg_quality': 95,\n",
       "          'savefig.orientation': 'portrait',\n",
       "          'savefig.pad_inches': 0.1,\n",
       "          'savefig.transparent': False,\n",
       "          'scatter.edgecolors': 'face',\n",
       "          'scatter.marker': 'o',\n",
       "          'svg.fonttype': 'path',\n",
       "          'svg.hashsalt': None,\n",
       "          'svg.image_inline': True,\n",
       "          'text.antialiased': True,\n",
       "          'text.color': 'black',\n",
       "          'text.hinting': 'force_autohint',\n",
       "          'text.hinting_factor': 8,\n",
       "          'text.kerning_factor': 0,\n",
       "          'text.latex.preamble': '',\n",
       "          'text.latex.preview': False,\n",
       "          'text.usetex': False,\n",
       "          'timezone': 'UTC',\n",
       "          'tk.window_focus': False,\n",
       "          'toolbar': 'toolbar2',\n",
       "          'webagg.address': '127.0.0.1',\n",
       "          'webagg.open_in_browser': True,\n",
       "          'webagg.port': 8988,\n",
       "          'webagg.port_retries': 50,\n",
       "          'xaxis.labellocation': 'center',\n",
       "          'xtick.alignment': 'center',\n",
       "          'xtick.bottom': True,\n",
       "          'xtick.color': 'black',\n",
       "          'xtick.direction': 'out',\n",
       "          'xtick.labelbottom': True,\n",
       "          'xtick.labelsize': 'medium',\n",
       "          'xtick.labeltop': False,\n",
       "          'xtick.major.bottom': True,\n",
       "          'xtick.major.pad': 3.5,\n",
       "          'xtick.major.size': 3.5,\n",
       "          'xtick.major.top': True,\n",
       "          'xtick.major.width': 0.8,\n",
       "          'xtick.minor.bottom': True,\n",
       "          'xtick.minor.pad': 3.4,\n",
       "          'xtick.minor.size': 2.0,\n",
       "          'xtick.minor.top': True,\n",
       "          'xtick.minor.visible': False,\n",
       "          'xtick.minor.width': 0.6,\n",
       "          'xtick.top': False,\n",
       "          'yaxis.labellocation': 'center',\n",
       "          'ytick.alignment': 'center_baseline',\n",
       "          'ytick.color': 'black',\n",
       "          'ytick.direction': 'out',\n",
       "          'ytick.labelleft': True,\n",
       "          'ytick.labelright': False,\n",
       "          'ytick.labelsize': 'medium',\n",
       "          'ytick.left': True,\n",
       "          'ytick.major.left': True,\n",
       "          'ytick.major.pad': 3.5,\n",
       "          'ytick.major.right': True,\n",
       "          'ytick.major.size': 3.5,\n",
       "          'ytick.major.width': 0.8,\n",
       "          'ytick.minor.left': True,\n",
       "          'ytick.minor.pad': 3.4,\n",
       "          'ytick.minor.right': True,\n",
       "          'ytick.minor.size': 2.0,\n",
       "          'ytick.minor.visible': False,\n",
       "          'ytick.minor.width': 0.6,\n",
       "          'ytick.right': False})"
      ]
     },
     "execution_count": 1,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "import matplotlib\n",
    "matplotlib.rc_params()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 4.1.2　图表样式修改"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "'C:\\\\Users\\\\admin\\\\AppData\\\\Roaming\\\\Python\\\\Python38\\\\site-packages\\\\matplotlib\\\\mpl-data\\\\matplotlibrc'"
      ]
     },
     "execution_count": 2,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "import matplotlib\n",
    "matplotlib.matplotlib_fname()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# 4.2　使用颜色"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 4.2.1　使用基础颜色"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "aliceblue #F0F8FF\n",
      "antiquewhite #FAEBD7\n",
      "aqua #00FFFF\n",
      "aquamarine #7FFFD4\n",
      "azure #F0FFFF\n",
      "beige #F5F5DC\n",
      "bisque #FFE4C4\n",
      "black #000000\n",
      "blanchedalmond #FFEBCD\n",
      "blue #0000FF\n",
      "blueviolet #8A2BE2\n",
      "brown #A52A2A\n",
      "burlywood #DEB887\n",
      "cadetblue #5F9EA0\n",
      "chartreuse #7FFF00\n",
      "chocolate #D2691E\n",
      "coral #FF7F50\n",
      "cornflowerblue #6495ED\n",
      "cornsilk #FFF8DC\n",
      "crimson #DC143C\n",
      "cyan #00FFFF\n",
      "darkblue #00008B\n",
      "darkcyan #008B8B\n",
      "darkgoldenrod #B8860B\n",
      "darkgray #A9A9A9\n",
      "darkgreen #006400\n",
      "darkgrey #A9A9A9\n",
      "darkkhaki #BDB76B\n",
      "darkmagenta #8B008B\n",
      "darkolivegreen #556B2F\n",
      "darkorange #FF8C00\n",
      "darkorchid #9932CC\n",
      "darkred #8B0000\n",
      "darksalmon #E9967A\n",
      "darkseagreen #8FBC8F\n",
      "darkslateblue #483D8B\n",
      "darkslategray #2F4F4F\n",
      "darkslategrey #2F4F4F\n",
      "darkturquoise #00CED1\n",
      "darkviolet #9400D3\n",
      "deeppink #FF1493\n",
      "deepskyblue #00BFFF\n",
      "dimgray #696969\n",
      "dimgrey #696969\n",
      "dodgerblue #1E90FF\n",
      "firebrick #B22222\n",
      "floralwhite #FFFAF0\n",
      "forestgreen #228B22\n",
      "fuchsia #FF00FF\n",
      "gainsboro #DCDCDC\n",
      "ghostwhite #F8F8FF\n",
      "gold #FFD700\n",
      "goldenrod #DAA520\n",
      "gray #808080\n",
      "green #008000\n",
      "greenyellow #ADFF2F\n",
      "grey #808080\n",
      "honeydew #F0FFF0\n",
      "hotpink #FF69B4\n",
      "indianred #CD5C5C\n",
      "indigo #4B0082\n",
      "ivory #FFFFF0\n",
      "khaki #F0E68C\n",
      "lavender #E6E6FA\n",
      "lavenderblush #FFF0F5\n",
      "lawngreen #7CFC00\n",
      "lemonchiffon #FFFACD\n",
      "lightblue #ADD8E6\n",
      "lightcoral #F08080\n",
      "lightcyan #E0FFFF\n",
      "lightgoldenrodyellow #FAFAD2\n",
      "lightgray #D3D3D3\n",
      "lightgreen #90EE90\n",
      "lightgrey #D3D3D3\n",
      "lightpink #FFB6C1\n",
      "lightsalmon #FFA07A\n",
      "lightseagreen #20B2AA\n",
      "lightskyblue #87CEFA\n",
      "lightslategray #778899\n",
      "lightslategrey #778899\n",
      "lightsteelblue #B0C4DE\n",
      "lightyellow #FFFFE0\n",
      "lime #00FF00\n",
      "limegreen #32CD32\n",
      "linen #FAF0E6\n",
      "magenta #FF00FF\n",
      "maroon #800000\n",
      "mediumaquamarine #66CDAA\n",
      "mediumblue #0000CD\n",
      "mediumorchid #BA55D3\n",
      "mediumpurple #9370DB\n",
      "mediumseagreen #3CB371\n",
      "mediumslateblue #7B68EE\n",
      "mediumspringgreen #00FA9A\n",
      "mediumturquoise #48D1CC\n",
      "mediumvioletred #C71585\n",
      "midnightblue #191970\n",
      "mintcream #F5FFFA\n",
      "mistyrose #FFE4E1\n",
      "moccasin #FFE4B5\n",
      "navajowhite #FFDEAD\n",
      "navy #000080\n",
      "oldlace #FDF5E6\n",
      "olive #808000\n",
      "olivedrab #6B8E23\n",
      "orange #FFA500\n",
      "orangered #FF4500\n",
      "orchid #DA70D6\n",
      "palegoldenrod #EEE8AA\n",
      "palegreen #98FB98\n",
      "paleturquoise #AFEEEE\n",
      "palevioletred #DB7093\n",
      "papayawhip #FFEFD5\n",
      "peachpuff #FFDAB9\n",
      "peru #CD853F\n",
      "pink #FFC0CB\n",
      "plum #DDA0DD\n",
      "powderblue #B0E0E6\n",
      "purple #800080\n",
      "rebeccapurple #663399\n",
      "red #FF0000\n",
      "rosybrown #BC8F8F\n",
      "royalblue #4169E1\n",
      "saddlebrown #8B4513\n",
      "salmon #FA8072\n",
      "sandybrown #F4A460\n",
      "seagreen #2E8B57\n",
      "seashell #FFF5EE\n",
      "sienna #A0522D\n",
      "silver #C0C0C0\n",
      "skyblue #87CEEB\n",
      "slateblue #6A5ACD\n",
      "slategray #708090\n",
      "slategrey #708090\n",
      "snow #FFFAFA\n",
      "springgreen #00FF7F\n",
      "steelblue #4682B4\n",
      "tan #D2B48C\n",
      "teal #008080\n",
      "thistle #D8BFD8\n",
      "tomato #FF6347\n",
      "turquoise #40E0D0\n",
      "violet #EE82EE\n",
      "wheat #F5DEB3\n",
      "white #FFFFFF\n",
      "whitesmoke #F5F5F5\n",
      "yellow #FFFF00\n",
      "yellowgreen #9ACD32\n"
     ]
    }
   ],
   "source": [
    "for name, hex in matplotlib.colors.cnames.items():\n",
    "    print(name, hex)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 4.2.2　使用颜色映射表"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "['Accent',\n",
       " 'Accent_r',\n",
       " 'Blues',\n",
       " 'Blues_r',\n",
       " 'BrBG',\n",
       " 'BrBG_r',\n",
       " 'BuGn',\n",
       " 'BuGn_r',\n",
       " 'BuPu',\n",
       " 'BuPu_r',\n",
       " 'CMRmap',\n",
       " 'CMRmap_r',\n",
       " 'Dark2',\n",
       " 'Dark2_r',\n",
       " 'GnBu',\n",
       " 'GnBu_r',\n",
       " 'Greens',\n",
       " 'Greens_r',\n",
       " 'Greys',\n",
       " 'Greys_r',\n",
       " 'OrRd',\n",
       " 'OrRd_r',\n",
       " 'Oranges',\n",
       " 'Oranges_r',\n",
       " 'PRGn',\n",
       " 'PRGn_r',\n",
       " 'Paired',\n",
       " 'Paired_r',\n",
       " 'Pastel1',\n",
       " 'Pastel1_r',\n",
       " 'Pastel2',\n",
       " 'Pastel2_r',\n",
       " 'PiYG',\n",
       " 'PiYG_r',\n",
       " 'PuBu',\n",
       " 'PuBuGn',\n",
       " 'PuBuGn_r',\n",
       " 'PuBu_r',\n",
       " 'PuOr',\n",
       " 'PuOr_r',\n",
       " 'PuRd',\n",
       " 'PuRd_r',\n",
       " 'Purples',\n",
       " 'Purples_r',\n",
       " 'RdBu',\n",
       " 'RdBu_r',\n",
       " 'RdGy',\n",
       " 'RdGy_r',\n",
       " 'RdPu',\n",
       " 'RdPu_r',\n",
       " 'RdYlBu',\n",
       " 'RdYlBu_r',\n",
       " 'RdYlGn',\n",
       " 'RdYlGn_r',\n",
       " 'Reds',\n",
       " 'Reds_r',\n",
       " 'Set1',\n",
       " 'Set1_r',\n",
       " 'Set2',\n",
       " 'Set2_r',\n",
       " 'Set3',\n",
       " 'Set3_r',\n",
       " 'Spectral',\n",
       " 'Spectral_r',\n",
       " 'Wistia',\n",
       " 'Wistia_r',\n",
       " 'YlGn',\n",
       " 'YlGnBu',\n",
       " 'YlGnBu_r',\n",
       " 'YlGn_r',\n",
       " 'YlOrBr',\n",
       " 'YlOrBr_r',\n",
       " 'YlOrRd',\n",
       " 'YlOrRd_r',\n",
       " 'afmhot',\n",
       " 'afmhot_r',\n",
       " 'autumn',\n",
       " 'autumn_r',\n",
       " 'binary',\n",
       " 'binary_r',\n",
       " 'bone',\n",
       " 'bone_r',\n",
       " 'brg',\n",
       " 'brg_r',\n",
       " 'bwr',\n",
       " 'bwr_r',\n",
       " 'cividis',\n",
       " 'cividis_r',\n",
       " 'cool',\n",
       " 'cool_r',\n",
       " 'coolwarm',\n",
       " 'coolwarm_r',\n",
       " 'copper',\n",
       " 'copper_r',\n",
       " 'cubehelix',\n",
       " 'cubehelix_r',\n",
       " 'flag',\n",
       " 'flag_r',\n",
       " 'gist_earth',\n",
       " 'gist_earth_r',\n",
       " 'gist_gray',\n",
       " 'gist_gray_r',\n",
       " 'gist_heat',\n",
       " 'gist_heat_r',\n",
       " 'gist_ncar',\n",
       " 'gist_ncar_r',\n",
       " 'gist_rainbow',\n",
       " 'gist_rainbow_r',\n",
       " 'gist_stern',\n",
       " 'gist_stern_r',\n",
       " 'gist_yarg',\n",
       " 'gist_yarg_r',\n",
       " 'gnuplot',\n",
       " 'gnuplot2',\n",
       " 'gnuplot2_r',\n",
       " 'gnuplot_r',\n",
       " 'gray',\n",
       " 'gray_r',\n",
       " 'hot',\n",
       " 'hot_r',\n",
       " 'hsv',\n",
       " 'hsv_r',\n",
       " 'inferno',\n",
       " 'inferno_r',\n",
       " 'jet',\n",
       " 'jet_r',\n",
       " 'magma',\n",
       " 'magma_r',\n",
       " 'nipy_spectral',\n",
       " 'nipy_spectral_r',\n",
       " 'ocean',\n",
       " 'ocean_r',\n",
       " 'pink',\n",
       " 'pink_r',\n",
       " 'plasma',\n",
       " 'plasma_r',\n",
       " 'prism',\n",
       " 'prism_r',\n",
       " 'rainbow',\n",
       " 'rainbow_r',\n",
       " 'seismic',\n",
       " 'seismic_r',\n",
       " 'spring',\n",
       " 'spring_r',\n",
       " 'summer',\n",
       " 'summer_r',\n",
       " 'tab10',\n",
       " 'tab10_r',\n",
       " 'tab20',\n",
       " 'tab20_r',\n",
       " 'tab20b',\n",
       " 'tab20b_r',\n",
       " 'tab20c',\n",
       " 'tab20c_r',\n",
       " 'terrain',\n",
       " 'terrain_r',\n",
       " 'turbo',\n",
       " 'turbo_r',\n",
       " 'twilight',\n",
       " 'twilight_r',\n",
       " 'twilight_shifted',\n",
       " 'twilight_shifted_r',\n",
       " 'viridis',\n",
       " 'viridis_r',\n",
       " 'winter',\n",
       " 'winter_r']"
      ]
     },
     "execution_count": 10,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "plt.colormaps()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 4.2.3　实例1：两个地区对不同种类图书的采购情况"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 28,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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g7p8QIA0OeSgQYOWqVbkoGBm3U5HB4Rp06YxadKkumxrWffVzUdmZnX2/PPPc/3117P55puzYMECGhsb2XrrrXnssceKZQYOHMgWW2zR4vrNzc1cc801VTcJLQsHBeOO8S3OCN1p7L1N+3/xzQoT27nWsEXbM083NjYWZ/B77bUXd955J3379mXBggVMmjSJLbfckmHDhnH//fczb948evVafGuM8ePHs8022xTPX3/9dQ444AAeeeSRd21neTgomJnV0S233MK5557La6+9xsCBA2lsbOTGG2/kmWeeYeTIkUyaNInJkxefqB188MEMHz6cM844g4kTJ3LMMcfw6KOPstpqqzFz5kyOOOII3n777aVscdm4T8HMrI722WcfLr/8cvbdd1/69+/PQw89xPTp01l//fW59dZb3zUq6uc//zmvvvoqo0aNYvTo0dx8882sttpqADQ0NDBu3DhWWWWV1ja3zBwUzMzqqKGhoSj0jzzySLbffntOPfVU+vTp0+LyPXv25NJLL2Xy5Mm89dZbrLXWWsVrq6yyCgMGDGjX/Ln5yMysgwwZMmSJWsG1117LzJkz37XcmWeeyU477cTQoUPZcccdeeihhxg4cGBN8uSagplZnc2fP5+nnnqK008/vUibN28e66yzDrfddluR9sorr7DXXnshifPPP58xY8bwuc99jgsuuKBmeXNNwcysju6++24uuugiRo4cyX777cfYsWN58cUXueqqqxg2bBi33347l112GQCDBg3i5JNPZueddy7WP+WUU5g3b17N8uegYGbdWxVDSNvTnnvuyZ577lk8P/TQQzniiCOISPno27cvF1xwAVdffTWf+tSnADjvvPOWeI+IYMyYMRx44IEAPPjgg+2WPwcFM7MOdOCBBxaFe7mW+hZKIqIIIu3NQcHMbAUjqWZTdbij2czMCg4KZmZWcFAwM6uzes6Suqzcp2BmVmeeJdXMrJNq71mCq5nVt71mSZ01axajRo1i4cKF9O/fn3HjxtGzZ8/3lH83H5mZ1dEtt9zCsccey2233cZXv/rVd82SOnLkyCVGFh188MGce+65RAQTJkzgmGOOYcaMGQDccMMNnHLKKdx3332sueaa3HPPPe85f64pmJnV0T777MM666zDddddV8ySuuOOOxazpI4YMeJds6SeeuqpjBo1iueff36JWVKPO+64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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "# 01_book_purchase\n",
    "import numpy as np\n",
    "import matplotlib.pyplot as plt\n",
    "plt.rcParams[\"font.sans-serif\"] = [\"SimHei\"]\n",
    "plt.rcParams[\"axes.unicode_minus\"] = False\n",
    "x = np.arange(5)\n",
    "y1 = [1200, 2400, 1800, 2200, 1600]\n",
    "y2 = [1050, 2100, 1300, 1600, 1340]\n",
    "bar_width = 0.6\n",
    "tick_label = [\"家庭\", \"小说\", \"心理\", \"科技\", \"儿童\"]\n",
    "fig = plt.figure()\n",
    "ax = fig.add_subplot(111)\n",
    "# 绘制柱形图 , 并使用颜色\n",
    "ax.bar(x, y1, bar_width, color=\"#FFCC00\", align=\"center\", label =\"地区1\")\n",
    "ax.bar(x, y2, bar_width, bottom=y1, color=\"#B0C4DE\", align=\"center\", label=\"地区2\")\n",
    "ax.set_ylabel(\"采购数量(本)\")\n",
    "ax.set_xlabel(\"图书种类\")\n",
    "ax.set_title(\" 地区1和地区2对各类图书的采购情况\")\n",
    "ax.grid(True, axis='y', color=\"gray\", alpha=0.2)\n",
    "ax.set_xticks(x)\n",
    "ax.set_xticklabels(tick_label)\n",
    "ax.legend()\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# 4.3　选择线型"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 4.3.2　实例2：2017年7月与2019年7月国际外汇市场美元/人民币汇率走势"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {
    "scrolled": true
   },
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "# 02_dollar_RMB_exchange_rate\n",
    "import numpy as np\n",
    "import matplotlib.pyplot as plt\n",
    "plt.rcParams[\"font.sans-serif\"] = [\"SimHei\"]\n",
    "plt.rcParams[\"axes.unicode_minus\"] = False\n",
    "# 汇率\n",
    "eurcny_2017 = np.array([6.8007, 6.8007, 6.8015, 6.8015, 6.8060,  6.8060, 6.8060, 6.8036, \n",
    "                        6.8025, 6.7877, 6.7835, 6.7758, 6.7700, 6.7463, 6.7519,6.7511, \n",
    "                        6.7511, 6.7539, 6.7265])\n",
    "eurcny_2019 = np.array([6.8640, 6.8705, 6.8697, 6.8697, 6.8697,6.8881, 6.8853, 6.8856, \n",
    "                        6.8677, 6.8662, 6.8662, 6.8662, 6.8827, 6.8761, 6.8635,6.8860, \n",
    "                        6.8737, 6.8796, 6.8841])\n",
    "date_x = np.array([3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 17, 18, 19, 24, 25, 26, 31])\n",
    "fig = plt.figure()\n",
    "ax = fig.add_subplot(111)\n",
    "# 第1 条折线 : 湖绿色 , 实线 , 线宽为 2\n",
    "ax.plot(date_x, eurcny_2017, color='#006374', linewidth=2, label='2017年7月美元/人民币汇率')\n",
    "# 第2 条折线 : 紫色 , 长虚线 , 线宽为 2\n",
    "ax.plot(date_x, eurcny_2019, color='#8a2e76', linestyle='--', linewidth=2, label='2019年7月美元/人民币汇率')\n",
    "ax.set_title('2017年7月与2019年7月美元/人民币汇率走势')\n",
    "ax.set_xlabel('日期')\n",
    "ax.set_ylabel('汇率')\n",
    "ax.legend()\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# 4.4　添加数据标记"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 4.4.1　添加折线图或散点图的数据标记"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "[<matplotlib.lines.Line2D at 0x108a4dc0>]"
      ]
     },
     "execution_count": 3,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.plot([1, 2, 3], [3, 4, 5], marker='*')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "[<matplotlib.lines.Line2D at 0x571f700>]"
      ]
     },
     "execution_count": 4,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.plot([1, 2, 3], [3, 4, 5], marker='*', markersize=20, markerfacecolor='y')"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 4.4.2　实例3：标记不同产品各季度的销售额"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "# 03_sales_of_different_products\n",
    "import numpy as np\n",
    "import matplotlib.pyplot as plt\n",
    "plt.rcParams[\"font.sans-serif\"] = [\"SimHei\"]\n",
    "plt.rcParams[\"axes.unicode_minus\"] = False\n",
    "sale_a = [2144, 4617, 7674, 6666]\n",
    "sale_b = [853, 1214, 2414, 4409]\n",
    "sale_c = [153, 155, 292, 680]\n",
    "fig = plt.figure()\n",
    "ax = fig.add_subplot(111)\n",
    "# 绘制具有不同线条样式的折线图\n",
    "ax.plot(sale_a, 'D-', sale_b, '^:', sale_c, 's--')\n",
    "ax.grid(alpha=0.3)\n",
    "ax.set_ylabel('销售额(万元)')\n",
    "ax.set_xticks(np.arange(len(sale_c)))\n",
    "ax.set_xticklabels(['第1季度','第2季度', '第3季度', '第4季度'])\n",
    "ax.legend(['产品A','产品B','产品C'])\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# 4.5　设置字体"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 4.5.1　设置字体样式"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "Text(1.9, 3.75, 'y=x+2')"
      ]
     },
     "execution_count": 6,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.plot([1, 2, 3], [3, 4, 5])\n",
    "plt.text(1.9, 3.75, 'y=x+2', bbox=dict(facecolor='y'), family='serif', fontsize=18, fontstyle='normal', rotation=-60)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 4.5.2　实例4：未来15天的最高气温和最低气温（设置字体样式）"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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O+8kHCz5G2Pi3j/f+YZvN+4I+PmKX7ext6j0XDF7CosYNWMVr33xq99tjm58EHeddUyZ+/3oo4+4++67EZEDrs4BevXqxdSpU2ndujV/+ctfaNNm/wDFhYWFpdatWbMm1157LRMmTGDfvn1069aNFi1aALB8+fJS6xYXF/PGG2/wySefsGbNGs455xy2bNnCli1byM7O5p133ikz7mBY8jfGVHm+ib+85cHq3bs3o0aNYu7cuZx22mk899xzXH/99SXdKjt37kydOnXo27cvAD/9dOD0wgsWLGDmzJk0atSIl19+mbp169K4cWO2bNlSss7gwYNp1KhRyfv8/HyuueYaLr30Uq644gq6dOnCxo0bad26NbfddluljsnDkr8xJu6Vd4Xe474P2bDtwJ40TTLT+e81fw15v8nJyQfU98+ZM4fDDz+cOXPm8MQTT1BcXExmZiazZs3inXfeoajIqXoSEc4++2wGDx5c0hg8bdo0mjdvzs0330zt2rXJz89n27ZtHH744SQnJ7No0SIAduzYQU5ODuPGjaNmzZp4RjTeunVr2Bp8raunMabKG9nvSNJTSyfp9NRkRvY7Mizlz507lwcffJDdu3dz5ZVXkpeXR0ZGBs2aNSvVx37y5MlkZmaSmZnJfffdV7Lcs86cOXPo2bMnzZo145FHHmH06NGcfvrpvPXWW9SrV69k/Z07d9KtWzfeeecd9u3bx6OPPspxxx3HoEGDwpL4wa78jTHVgKdRN9y9fXbs2MHixYs54ogj6NixI2+++SYFBQUsWLCA1q1bU1xcjPc86AUFBdx9990AJCU519aez3/77Td27dpFZmam34eyPMu+/fZbmjRx4q5ZsyYjR47k+OOPp0ePHtx6662VOh5vlvyNMdXCOZ2bhK1rp0fNmjXp0qULN9xwA40aNSI7O5v58+czbNgwatWqxaWXXsqDDz5Ysv5HH31UavtXXnmFtWvXUrduXebMmcMZZ5zBVVddxZo1a7jjjjtKqn0uuugiVq9ezcMPP0zbtm259tprue6669i2bRstW7bk3XffJSsri0svvZSNGzcyfvx4Tj755Eodm3ifteKZzeRlTGJZvXo1Rx11VKzDqJSioqJSbQbFxcUldwTh5u/vJSLLVbWLv/Wtzt8YYyLEt7E4Uok/FPETiTHGmKix5G+MMQkoaslfROqLyKkicnC09mmMMca/qCR/EWkEvAecAHwkIg1F5FcRWej+6xCNOOLJtm3buPTSSxk6dCirV68GnKf8cnJy4rJcY0zZ3n77bb9DOXsP85CIQzofA9ysqktEpB5wOfCaqt4epf3HnWXLljF+/Hh27NjBzJkz6dq1K8uWLYvbco1JZGUN6QxOr5577rmHtm3b8sEHH7B582Z++eUX1q1bx9ChQ7nuuusoLi5OvCGdVXU+gIj0xrn6nwEMFJEewFrgUlXdF41Y4sWpp55KTk4O9913H6NGjeKBBx5g2LBhcVuuMXFv1XRYMB62r4eMpnDyOOh4XliKLmtIZ4D33nuP3r17s3LlSrZu3cpll13GDTfcwMcff1yyTlJSUmIO6SzO42vnA4VANtBHVX8TkclAf+DtaMUSLxo0aMAxxxzD7NmzGTFiBHPmzInrco2JW6umwzv/B4Vutcr2dc57CMsJoKwhnQEmTZpE3759SUlJoUWLFrRu3fqAbp0JO6SzOk+TXS8i/wIOU1XPKfE7oI2/bUTkauBqgObNm0clzmiZMWMGffv25cILL2TkyJH8/vvvLFmyhF27dpV6YjBeyjUmpt4fDZu+Cvz5+mVQVFB6WeEeeOsGWD7V/zaHdYAz7vP/mSuYIZ0HDhxYKtE/9NBDvP7663z55Zecfvrp5OXl8eqrrybmkM4icjvwm6q+BGQCT4nId8DXwEDgXn/bqeoUYAo4T/hGI1Zf27Zt48Ybb6SgoIAbb7yRp556ioKCAu66665KPX3Yrl07hg0bRlpaGhMmTODII4/k7rvvZvjw4ZWKN1LlRurvYExY+Cb+8pYHKZghnXfs2MGRRx5Z0rZ26623Mnz4cIYMGcLUqVOpVatWSXmJOKTzFGC6iFyJk/B7A68AArztaROIR74NqN6vx44dG3K57du3Z/bs2SXvZ63YwLy03kx96hsaZ/4c8qBUkSo3Un8HY4JSzhU6D7d3qnp8ZTSDy94LebfBDOl81FFHkZubW2odVaVdu3Z8/fXXnHDCCSXLE25IZ1XdqqqnqmpvVf27qn6lqh1VtYOqxnXmOPXUU1FV7rvvPoYMGVLyeuDAgWHbh2cKug3b9qDsn4Ju1ooNcVNuNP4OxoTs5HGQml56WWq6szwMyhrS2df69eu56qqrOPHEE5k5cyZ5eXkUFDh3IDakcxXjaUDNzs5mwIABJa99u36FasL7q0vmHvXYU1jEyBnZvPR5TsjlfrVhO4VFpWvL9hQWMXHudyFd/Uf672BMyDyNumHu7RPMkM5JSUklQztv3ryZl19+mUGDBtGjRw/uvvtunnnmGXbt2sXll18eV0M626ie5fA0oO7atYsTTzyRZcuWsWvXLiZPnszEiRNDKnPjtj0s+TnX/fcnv/554IMhHr3ahP5A9OIftgT8rH+Hw+jWugHdWjegzSF1/H4ZvUXi72BMWeJhVM+CggJmz55Nt27daNSoEf379+fkk0+mSZMm1KpVizfeeINnn32WRYsWsWDBAoYPH07dunVZtGgRIkKXLl24/fbbmTRpEp9//jnr1q3j+++/5/3336dly5alqn1Wr17NzTffTNu2bcnIyOCVV14pGdJ54MCBZGVl8dFHHwUc0rmio3pWq+Tv3Sh53XXXMW7cOFSVadOmlbSqV9TXX3/NqFGjSEtL46677mLMmDGlGlODESjZZ6Sn0rVVfZb+ksv2PQc+5tAkM51PR58UUtwQeGq79NRk6tVKZeN2p9GqQe0adG1dv8yTQTj+DsZURDwk/3CLpyGdq1XynzdvHm3bti1piBw5ciTz5s1j06ZNXHPNNWGLZdaKDWXOGFResvck2XaH1SUpSUrq5r2rftJTk5kwqEOlJqcoq9yzj23M+q17+NwT50+5FToZlPc3MKayVq9eTbt27cq9KzVOA/N3331XoeRfrer8vZ9uHTt2LLVq1SIrK4szzzwzbPvwTagbtu3h9v+tYllOLoVF6jfZD+/eslSy9xWpKejKK7dZ/Vo0q1+L87o0Q1UPOBnM/moTcODJ4JsN2/nHm1+X+huMmflVqX0aU1lpaWnk5ubSoEEDOwGUQVXJzc0lLS2tQttVqyt/cFrJH3/8cVq1asVxxx3Hvffe6/fhjFAFqkqBwFf2VZG/k4HnziBJoNjP16ay1VTGeCssLGT9+vUlfepNYGlpaTRt2rTUkBOQQNU+3o2SkydP5ocffuD555+nfv36ldq3dzXO9Kz1ftcR4Kd7+1fZZF8e75PBqBmr/K4jwC/3he8uyxhTOQlT7eP9dGvNmjX5448/GDVqFP3792fQoEFBl1NWnX1aShL5+4oP2KZxZnq1TfzgdEPzVBM9Ov8Hv3c/tWumkLurgAZ1asYgQmNMRVSrK/9QVaSB9u3sjRFpnK1K/DUkJ4tQpEp6ajLDurfg6l6tyz0JePfOuuuuu1i2bBlbt27lxhtvjPQhGBN3IvF7SJgrf1+BeqSUl+zLaqCNVONsVRLob9C+SQZPfPgDzyz6mZc+W1vuScB7yIjp06ezdu1aOnbsGM1DMSZuRPv3UG2v/P1enSYJGekp/LnbmVmnOjXQxpMf/9jFEx/+wNvZG6mZUvadQE5ODmPHjmXs2LH88ccfrFy5kptuuin6QRsTB8L9e0jIK/+Jc9ccMGRCUbGSV1DEuAFHW7KPoCMOqcMjQztzw0ltyr0T8B4ywntUQ2MSUTR/D1GbwD3aNgbojlmwr5jLe7bi6MYHWeKPMM9J4IOb+9DvmEN5ZtHP9Lz/Iya8v5rcXQXMmDGDgoICLrzwQr788stYh2tMTEX791Btk3/jzPQKLTeRE+gksHhzDS646GJuueUWrrzyyrDtz3sS+48//pjTTz+dIUOGsG3btrDtI5yqWrwmMjy9FcP9ewgkoer8E61XTrwK1Caw+IctYWlI9x7mo2PHjmRnZ1NQUMCSJUsYMWJEBI6ocqpavCY6wjGESsI85OXLxp+Jb94ngWQRFNjn9ehwZU7WnoazvLw8Zs6cyd69exkzZgyTJk0K4xGET1WL10RWuC5ey0r+1bbaB5wuiZ+OPolf7juTT0efZIk/znhXB6UkJ5VK/OCZe2BNSGV7Gs5WrVqFiFBUVMSuXbvCEXZEVLV4TWT567BSmd+DP9U6+Zuq4YhD6pDv80X32LBtD098+ANZOX+y18+T1f54N5z9+uuvZGVlsWLFCr+zLsWDqhavibxAHVYCLQ9Fte3qaaqWxpnpfoeMSEkSHvzgewDSUpPo0qI+3dwRRjs2zaRGyoHXL97DfGRlZTFx4kR27tzJlClTIn4coahq8ZrIC/R7CGeHlajV+YtIfeA4YIWqBp5iKoBYzeRloqOsOs4+bRuy9Jc/S57K/m7TTiD4k0G4LF26lFGjRqGqXHHFFcyYMYPi4mKef/55Dj300IjtNxRVKVZzoAfmfMeTC38qtSzcdf5RufIXkUbATOBdYJKInATcBxwFzFbVe6IRh4lf5Q2bcXr7wzi9/WEAbN29t9TJoLw7g3A1/Hum35s3bx7Dhw8nNzeX2bNn88orr3DLLbeE6S8Rno4K0YrVhN+ugn28tXIjDevUIDU5id+250ekw0q0qn2OAW5W1SUiUg84CUhW1e4i8qSItFHVH6IUi4lT53RuEtSXu17tGkGfDJrXq8XPW3aXNCZXZuKZSy65BICsrCy6du1Kfn4+OTk5HHLIIRUqpyz+JgsKJd5oxGoiY8Ls1WzcvocZ1/6V41pUbjj6skQl+avqfAAR6Q2cANQHprsffwj0BCz5m5CUdTJ4eclav72I7nnvW/p3aFThaqLvv/+edevWceedd3LVVVexYMECfvrpp/I3LEd+YRFfrt3KnbO+9tvL4773vwvp6j8SsZrI+fTHLbyy9Feu6tUqookfotjgK848bOcDhTjzfmxwP9oBHBFgm6uBqwGaN28ehShNdeB9Mpj6WY7fdbbs2kvHf86tUJtBXl4eo0aNKpkgKC8vj86dO1O7du0Kx+hJ9p6RZVeu28beosC9mTbtyOfEBxeWxNqtdQMOPSjwtH3hjNVEx66CfYyasYrWB9fm1tOOjPj+opb81WlZvl5E/gUMBjzN1nUI0OVUVacAU8Bp8I1GnKZ6CdRron7tGvytU+Og2gw8JkyYUGqCoP/+979MnTo1qDgCJfskgQ5NM7mspzOM+D9mfsVv2w+ctjAjPYXDG9bm3VW/8doX6wBofXBturZuUBKv98mgMrGa2PCu7klLTY74/qLS20dEbgd+U9WXRORxIAtoqKoPisg/gTWq+mpZZVhvHxOKYJ6U9G0zCLY3UVkNs+Ule0+ZXVrUo25aatDxFhUrq3/bURLr0l/+ZGf+PqDsk4E97R7fPv1xCxc9u5SrerVi7JlHh63cmA/v4DbyTgdqAl8DY4BFwALgDKCbqm4vqwxL/iZUFU18wZwM9hYVM2XRz+QX7q+qqZGcxIlHHszWvH1BJ/vKxhvMySAlCd7IWl9q+lEb5yp+7CrYR7+HF1EzJYnZN/YK61V/zJO/3x07J4RTgUWquqm89S35m1gJdDIIpFOziiX7cCrrZOCrSWY6n44+KWqxGf/GvvkVr37xa0R698S8n78/qrqV/T1+jIlb/noTdf7XPL/rCvDW9T2iGF1pyUlC+yYZtG+SwZW9WlNUrBzxj9n4u8QL51ABJjTR7N3jy8b2MaaC6tWuQZMqMl9EcpIEjKluWgrFxdaPIlai3bvHlyV/Y0Iwst+RpPvUzaanJjOyX/R/xOXxF2uywI78fVz6whfk7iqIUWSJzdO7Z+KQjlHp3ePLkr8xITincxMmDOpAk8x0BKf+PF4bUP3F+uCQTvx7YHuW/vIn/R9bzNKfc2MdZkLxVPdc2TP61T0e1XoyF2NM2b7ZuJ0bXl3B2tzd3HrakVzX53Cb2zrCItm7x1fCTuZijCnbMY0zePuGHvTv0IiJc9dYNVAUxLq6x8OSvzEJrm5aKo9f0NmqgaLAU91zRY/YVfd4WPI3xiAiXNS1BW/+vTu1aqRwwTNLmPzRjwf0Blq6dCl9+vShd+/erF27lq+++opRo0bFKOqqxbt3z21x0DHAZvIyxpTwVAONmfkVE+euYekvf/LweZ1oUKcmUHqegDlz5vDBBx/w3HPPxTjqqiHaY/eUx678jTGleFcDLfk5t1Q10CWXXEKtWrXIysrijz/+4JtvvuGyyy5j1apVMY46vsVTdY+HJX9jzAHKqgbyzBPw5ZdfMnv2bKZMmcKECRNiHXLcirfqHg9L/saYgHx7A1389GJuuuU2Jk2aRGZmJk2bNqVWrVqkpkZv/KKqJl569/iy5G+MKZN3NdDcV/7D4q9+4rLrbuSoo45i2LBhDBkyhBtvvDHWYUaNd6P3xx9/zBlnnMG1117LF198ccC68Vjd42EPeRljguZ5KOzXP/O45dS2ND4ojQfnfZ9Q8wRMmzaNc889l3nz5pGTk8NJJ51Ehw4dDlgvmg9zBRKXo3oaY6oe395ASQKe3qChTjZf1VxyySUAZGVl8cUXX5CdnU1ubi6TJ0+madOmJevFW+8eX1btY4ypEE81UGZ6Kr6Dgu4pLGLi3DWxCSyKPI3eb7zxBs8//zxjxozhxRdfLPk8nqt7PCz5G2MqTETYvqfQ72fVfZ6AvLw8Ro0axaRJk3jttdcA+PPPP0lKctJpvPbu8WXVPsaYkDTOTGeDn0R/aEaan7WrjwkTJvDHH38watQoevXqxdlnn01ycjJPP/2087lb3fPGNfFZ3eNhDb7GmJD4m2we4KC0ZJ699AROaBWf1R2R5JmI/cqerbhjQPgmYg9VzBt8RSQDeN3d3y7gfOBH4Gd3lRGq+lU0YjHGhIenUdd7svkLujbjf8s3cMEzS7jl1LYJMUT0rBUbSv4GSSI0rFMjrqt7PKJy5S8ifwd+UNV5IvIf4DegtqreHmwZduVvTNWwM7+QMTO/4t1Vv9GnbUMmeY0NVN34u/upkZLEA+d2jIseTzEfz19Vn1RVz4zXDYF9wEAR+UREXhERa3swpprwfijs859zOfOxT/jilz9jHVZETJy75oBqr737iqtEj6eo9vYRkb8C9YB5QB9V7QlsA/oHWP9qEckSkazNmzdHL1BjTKV4jw2UXiM54BDRVV2gnk1VocdT1JK/iNQHHgcuB1ap6m/uR98Bbfxto6pTVLWLqnZp2LBhlCI1xoSL56GwM9ofxsS5a7jsxWV+ZwrznSfg0ksvZejQoaxevToGUQevXu0afpc3zkyPciQVF5XkLyI1gOnAGFVdC0wTkU4ikgwMBLKjEYcxJvr8VQMtyyldDeSZJ+DWW29lzpw5jB8/nrFjxzJz5swYRV2+ed/+zra8vYhPe3Z6ajIjq0CDb7Su/K8AjgPGishC4BtgGrAS+FxV50cpDmNMDHhXA6WlJjF0yhKeXLi/Gsh7noBOnTqhqtx3330MHDgwxpH7N+/b3/n7K8vp0DSTfw9sT5PMdARokpnOhEEd4qKxtzxRaWhV1f8A//FZ/M9o7NsYEz+OaZzBOyN6MmbmVzwwZw1Lf/6zpDeQZ8iEbt26sXPnTo455hiys7M5+ujY95f35kn8RzfO4KXLTyAjPZULT2gR67AqzIZ3MMZElaca6J5z9lcDLV69vmTIhBkzZlBQUMCFF17Il19+GetwS/GX+Ksqe8LXGBMz32zczvWvfEn2rCnU276GE7t2pkWLFixZsoS0tDQmTJjAkUfGR/15VUz8Me/nb6LHd6IJ7x4U8VRmJFW1eBOZpxrooutHUjzgX+zrcQ3X33I7s2fPZubMmZb4I8gerqpmPL0m5s2bx8KFC0tez5kzh2uuuSZuyoykqhZvovNUA3Vr3YDx737LmY99wnnHN+V/yzfExSQx1THxQ5BX/iJSW0QuFpGHRGSyiIwWkWMiHZypOO9eE/369SvVgyKeyoykqhavcXoDXdytBTOv686+oiIeW/AjG7btQdk/ScysFRuiHld1TfwQRPIXkQuAp4DNwL+AW4BZwLki8pSI1IlohKbCvHtNeL+OtzIjqarFaxztm2SQmnLgMMixmCSmOid+KKfaR0RaAQ1V9RKfj74DxotIG+BCYEqE4jMV5Jlo4vnnny/1Ot7KjKSqFq8pbdP2fL/LN2zbg6oivk9VRUBJ4m90ULVM/FDOlb+q/qKqj4lILRG5SUTOBBCR29yROterqiX+OOI90UTXrl1LXlfmSclIlAkHPtL/0ksv8eijj1aqzEjGa6KjrKERBj/1OYt/2EwwvRRD/X6VSvxXdK2WiR+C7OopIv/DGYxtrqr+IiLHA32Anqp6TmRDdFhXzxCtmg4LxsP29ZDRFE4eBx3Pi4typ02bxrnnnsu8efPIyckhOzubjh07ctNNN1U+vjDHaqLH3zDJaalJDOjYmM9+3MLG7fkc16IeN53Shp5HHBzwTiCU71d1S/zhmMzlMFV9yvNGVZcBy0QkPp+9No5V0+Gd/4NCd4TB7euc91C55Bemci+5xKlNzMrK4swzz6RTp06sXLky9LgiGKuJHn+TxHh6+xTsK+KNrPU8+dGPXPLcF2WeBCr6/apuib88wSb/BSLyITAb+BOoA5wK2KV4PFswfn/S8yjcA+/dAptWhV7u8hf9l7tgfIUTqndj7MKFC0OPKZBAf4MQYjXRc07nJn67dtZMSebibi0Y0qUpb2StZ3I5J4Fgv1+JlvghyOSvquPcsfj7AYcDO4BnVPXtSAZnKqGo0LnK9adgJyx7LvSyC/P8L9++Dla+Ci17QmbzcouJSGOsKvz5M+R84vwL9DfYvj58+zRR530SmB7gTmDPnj1Bfb8SMfFDBR7yUtXPgc8jGIsJh6JCJwEvfjDwOhnN4OavQ9/Hw+39J1VJglnXOa8zm0PLXs6JIMDJwLthtn///tSvH8KE377JPucT2LnR+azOoZCafuCVPzh1/6bKq5mSzCXdWnCen5NAna//V+73K1ETP9jYPjGzdOlSRo0ahaoybdo0rrnmGurWrcszzzxDZmZmxQv0TvrbfoUmx0GLHrDsmdLJLzUdznosvHX+nnIHPAqHtXeT8GLI+RT2uOO2B3EyCEp5yd5Tfste0OAI+OqNA2OVZBj4lFX7VEMF+4pKTgK/ldMwnAiJv1INvm51z2pV3RbuwBKZ9xAExx57LB9//DEFBQVMmzaNESNGBF+Qv6R/5iQ44hQQgcM6hL+ni2f7QOUeegx0vQaKi2Hz6v0ngzXvw8pXnHX8nQz89crpMCRwsq99CLTqVTrZ+/b88I21Zl0o2OH811Q7Zd0J3HRKG7bsLODBD75ngzvNYrN66dU28ZenzCt/EfkXsAy4SFXPj1pUflS3K3+PO++8k88++4z58+ezd+9exowZw6RJk8rf0F/S7ztmf9KPR74nA+87g/T6kL8d1GsybEmGGnWhYJvzvvYhpa/sD25T8WPdtxem9IW8XLh+CaTXC8eRmTjleycg4tw8eqSlJnHfoI5VYvKVUFTmyv9ToDfwfdijMiU9EVq2bImIUFRUxK5du8reqLwr/XiWlOTcFfi7M5h3V+nED8774gLn+EJN9r5SasA5T8IzJ8H7o2HQ05Urz8Q17zuBE/69gO17Ckt9nl9YzMS5a6pt8i9LmclfVecAc6IUS0Lx7ukydepUsrKyKCgooFmzZv43qMpJPxDvk8H7t/tfpzAfjr8ivPttfCz0uhUWPQDHnANHnhHe8k3cqZmSzA6fxO+xcZufDgEJoNoN6fzSSy+xdetW+vTpw7hx48jPz+exxx6jXbt2cVWud0+XXr168cgjj7Bz506mTPEZLaM6Jn1/Mpr670EUqV45vUfCd+/BOzdB825W/ZMAGmeml9T1+y5PROXV+bcAOqvqrACfHwycoqqvRya8/YKp88/OzubRRx+lY8eOLF++nCeffJK1a9cyZcoUHnvssZD3HalyS/Ft7DxxLBTtrVp1+pURqAdRZXsmlWXjSqf6p8MQq/5JAP6GjUhPTa4yE66HIuSZvFR1LdBWRB4TkbZeBdYSkWHAE8CiIALIEJH3RWSeiLwpIjVE5DkR+UxE7qjg8QTUqVMnhg0bVvJ+9+7d5OTkcMghh8RluSU8iW/7OkCd/866zllWuyFcNAOuXABtTq2eiR+cBH/WY84zCIjz30gmfthf/bPqdacnkqnWzunchAmDOtAkMx0BmmSmV+vEX55yq31U9QH3DuASETkcUGAPMFtVhwa5n4uASao6T0T+AwwFklW1u4g8KSJtVPWHUA/Cn3/84x+MGjWK999/nxUrVsR3ufP/6edBJIVaBztJv7omfF8dz4t+33ur/kkogYaNSETBDu+wFrgn1J2o6pNebxsCFwOPuO8/BHoCByR/EbkauBqgefOKPRR01FFHMXbsWDIzM2naNHz1xmEpd28erP9if7/1HQGGGsjLTZzEHyvevX/mjHEe/jImAUS1wdd9YKwekAN45mTbARzhb313roAp4NT5V3R/Dz30EOPHjw8p1rCW65vs12dBcaEzHEKjY90Hj3YeuJ0NQRAd3r1/jj7bev+YhFDp4R1E5ERV/SiI9eoDHwDn4kwF+ZqqLhGRQUA7Vb23rO2r1ENe5SV7z0NKzbtB2kGxaew0pcX44S9Pb7IBAwYwduxY8vLyGDduHF26+G2ri3m5pmqo7PAOycAbwPnADFU9W0SSVLXYXWU80KucMmoA04ExqrpWRJbjVPUsAToBkZmcM1oTmfQZDZnN9if7DVlOTx1Jgsad4a9/d5J9s65OsvdV3nAJJvJiWP2TnZ3NwoUL6dixI2+++SYjR46kQYMGPPbYY5VK0pEq11QPwc7kNRtn7P7BwLPAccBM4D3gJVUtM0uJyHXAvUC2u+gFnKv/BcAZQDdV3V5WGRW+8vd3NZ1cE3rcCIefFHw5vn76ED59FIoKDvzMk+w9V/aBkr2JXx/+26n+ueD1qFb/LFy4kJUrV9K7d2/Gjx9PWloaN910U6UnnY9UuaZqCMdMXsXAx8CJOOP51wKOwpm8fV55G6vqf4D/+AT1Ns6EMA+Ul/hD4m8Sj6IC54e96IGw745aB8P/rbBkX9XFuPfP8uXLOe2002jdujWLFi0KW5KOVLmm6ioz+YtIKvAuUKCqC0TkBpyG2kbAS8AIYEIoO1bVrThVQZERcLIOgUveDL3caQNxerv6yMu1xF8dxLj3z4oVK7j11ltp0aIFr732WtyXa6qu8sb2KRSR/wMeFJEXgL8AdYECnF44FwEDicfpHMsaLuDwEyNTrqkeYtj7Z9iwYQwbNoyioiLuvPPOuCzX04jcrl073nzTuZDKzs7m889trqeqJNg6/7eB/8NJ+Fe5/z1LVfeKyCuqelFkwwxTnX8kJzKxnjnVSyx7/0Sio0KYyvQe6uSmm24qWTZ//nxuvfXWysVowi7k4R281AbSgMU4T/feqap73c/CX18fDpEaLiAWwxCY6PNU/+ze7FT/RIu/oT7e+T9neRyU6TvUCcCzzz7LlVdeGXp8JiaCbfD9BbgZ52TxEHCQiNQF1gPx+0hkpIYLiMUwBCb6YlH946+jQuEemPV3+HxyaGX+/o3znIlvmfPvrvT3eMeOHagqGRkZlSrHRF+wwzv4Pa2LyFFAy3AGZExciVbvH1X4fq7/9iRwknedQ0Mr+7eV/pfv2ABP9do/nWaLv1b4+ObPn0+fPn1Ci8vEVKWGd1DV1SJyGmBDIprqyaf3z0s7u7N161ZuvPFGfv/9d0aPHs0LL7wQevmepL9wgpOkJfnAGc3AqV68KMSqn4fb+z+p1DwI0jJg2bOwZDLgzvlcgZPB3LlzuffeMh/Or7Y8Dd9h+y5EqMxAgnnCd5DPojnAbGCr+74z8GiY4zImfrjVP9nTJ7Bw88907NUfgDvuuCP0njO+ST+zBfztCUhKgfduPrBDwcnjQo//5HH+Oymc+ZBT7VOYDxuW759buZyTQd++fenbty8AT19/MrzUJ+GeTPd+ehoq+V2IYJllKbe3j4j8hDOEw2hgFfAPYCrwN0CAV1T19IhF6KpSY/uY6sft/bPwq3WsbH0d3fucwrnnnsvxxx/PDTfcwEknBfnUuL+k33skdBoKyanOOrHu7eN7Mlj3hftEu8/JYNfvMHdMwvZ88zw93b1799C+C1Eos6zePsEk/y9U9QQR+Qineud/wCfsr+rpqaptAxYQJpb8TcxtXMnCf/RiZVIH1mZ05ayzzqJ79+4MHjyYd999t+xtg0n68SrgySCAjGZw89fRiy9GPIl67dq1FfsuRLHMcAzv4GsbsBDnyr99iGUYU7U0Pta5ov3gFWrXbE6rVq2oUaMG6ellzAEbqHqnKiR9j9Q0aNnD+cft+08GL/b3v37Ap+urp9q1awf3XYhxmb6CSf51RaQ7kAG0cJfl44zJL+5rYxJDp6Hw2YdcnrmU0SNvIb+wmKuvvvrA9apD0g/EczLIaOa/IbnuYdGPKYYuv/xyRo8eTX5+vv/vQpyU6SuYap/bAE8n4WTgOWAZ8Ku7rK2qVmyarRBYtY+JG56J3zued+DYP1W5eqei/D3tDpCSDkNeiJtJcTw9aM4//3wGDx5M+/btOfvssznjjPiIL5IqW+2zDOivqreLSDtV3S4iNwOLVXWHiEwJa7TGxDvvh79+mOcMAZHR1HkQLOeT6nelH4i/eSi6XuOcFF4bCn+9AU65O6bH792DZuXKldx+++2cddZZ4d1JtOYNCXNPqjKv/EUkDZgLXIAzvMNDOPPvDgNOxxn24X1VfShsEQVgV/4mrqx81Xnq1neE1/QGcOo/q3fSL09hPnxwByx7BpoeD4Ofh8yIVw4E5GlEzcvLIzs7m927d/Pvf/+bTp06Vb7wOB9DrLK9fURVVURa4AztvMnrs8OAPqr636CjCZElfxNXAj04ldEUbv4m+vHEo2/ehLdGQFKyUz0Wo2ogT/K//PLLOeigg9i0aRN33HEHzz77bOUK3rcXHj4Gdv9x4GeS5DxAF6r87VAyWaKXCvakqlS1j7pnB1Vd6+ezTUDEE78xcSdQj5btG6IbRzw7ZiAc1hHeGB4X1UDTp0/nsssu488//yQpKdgxLb3s2wsbv3S6u+Z8Ar8uhX17/K+rxdBhSOjBfhGgNj2MPakqNbyDMQnL5nUIToPD4Yp5TjXQ50/AuqUBq4G8hzYAuO222xgwYEDJ08SV1bx5c8466yxSUlJ48MEHy9+grGR/aHs47lL46g2nzcdXRjPoPzH0YNe8H/HvV9SSv4gcijMBfC8RaQIsBX50Px6iqpujFYsxlRZoyITKDMNQXaWmwZkPOt1D3xrhDCbnUw3kO7TB6tWrmTVrFgMGDKj07r2HozjtsG1OI+qrJxzYiBpMsm/ZE1r0gFr1neVNjovM9yAK36+oJH8RqYczJERtd1FX4N/u3L7GVD3+erokyLg2ISujGsgzT8DKlSsBuP/++0smiwkb30bU7evgrRucUVvztwWX7H1F6nsQhe9XUDN5VXonIgfhPBD2lqr2FZEHgDOAXcASVb25vDKswdeYaiJAbyBPw2yzZs0oKioiLy+Pli1bhq3ah4ePCVxnfmh7J9G37AnNu0PtBuHZZ4xFYniHClHVHW4gnkXvA/9S1Z0i8p6IdFTVVb7bicjVwNXg1NcZY6qBQNVAOMMYLF68GIBvv/2Wgw46KPTk71uNE7CxVOC6T0PbRxUWqwbfz1TVMzLUd0AbnBFDS1HVKTjzBdOlS5fI36IYY6LHtxqo1lmQ0plHHnkEgBdffJGWLVsGX155dfY16sDeXQdul6CN9LFK/nNF5AKc+X/74SZ4Y0yCKekNNJa+y56lb9NNsG0IZDZn+PDhZW+7by9sXLE/2a9bCoV5zmfedfaeapxAD04laCN9rJL/P4GPgL3AU6q6JkZxGGNiLTXNmVimZc/91UCdL4Zv3yrd2Hn0OWUn+78MK7vO3hrpS4lKg284WIOvMQkg9yeYejbs8OnjLknOFJeeiei9G2jL6o2T4GLe4GuMMUFpcDgHjJcEzhOzqbVg4AuW7MPEkr8xJr7sCDBExt7dcFSYR+RMYCEMcGGMMREUqPdNgvbKiRRL/saY+HLyOKcXjrcE7pUTKZb8jTHxpeN5zrj1Gc0Acf5b2fHxzQGszt8YE386nmfJPsLsyt8YYxKQJX9jjElAlvyNMSYBWfI3xpgEZMnfGGMSkCV/Y4xJQJb8jTEmAVnyN8aYBGTJ3xhjEpAlf2OMSUCW/I0xJgFZ8jfGmARkyd8YYxKQJX9jjElAUU3+InKoiCx2X6eKyLsi8pmIXB7NOIwxJtFFLfmLSD1gKlDbXTQCyFLV7sAAEakbrViMMSbRRfPKvwg4H9jhvu8LTHdffwZ08d1ARK4WkSwRydq8eXNUgjTGmEQQteSvqjtUdbvXotrABvf1DuBQP9tMUdUuqtqlYcOG0QjTGGMSQiwbfHcBnlma68Q4FmOMSSixTLjLgZ7u605ATuxCMcaYxBLLCdynArNFpBdwNLA0hrEYY0xCifqVv6r2df+7FjgV+BQ4RVWLoh2LMcYkqlhe+aOqG9nf48cYY0yUWCOrMcYkIEv+xhiTgCz5G2NMArLkb4wxCciSvzHGJCBL/sYYk4As+RtjTAKy5G+MMQnIkr8xxiQgS/7GGJOALPkbY0wCsuRvjDEJyJK/McYkIEv+xhiTgCz5G2NMArLkb4wxCciSvzHGJKCYJX8RSRGRX0VkofuvQ6xiMcaYRBPLaRw7Aq+p6u0xjMEYYxJSLKt9ugEDReQTEXlFRGI6n7AxxiSSWCb/ZUAfVe0JbAP6xzAWY4xJKLFM/qtU9Tf39XdAG98VRORqEckSkazNmzdHNzpjjKnGYpn8p4lIJxFJBgYC2b4rqOoUVe2iql0aNmwY/QiNMaaaimU9+3jgVUCAt1V1fgxjMcaYhBKz5K+qX+P0+DHGGBNl9pCXMcYkIEv+xhiTgCz5G2NMArLkb4wxCciSvzHGJCBL/sYYk4As+RtjTAKy5G+MMQnIkr8xxiQgS/7GGJOALPkbY0wCsuRvjDEJyJK/McYkIEv+xhiTgCz5G2NMArLkb4wxCciSvzHGJCBL/sYYk4As+RtjTAKy5G+MMQkopslfRJ4Tkc9E5I5YxmGMMYkmZslfRAYByaraHWgsIm1iFYsxxiSaWF759wWmu68/BHrGLhRjjEksKTHcd21gg/t6B3CE7woicjVwtft2l4isCXFfBwNbQtw22qpSrFC14q1KsULVircqxQpVK97KxNoi0AexTP67gHT3dR383IWo6hRgSmV3JCJZqtqlsuVEQ1WKFapWvFUpVqha8ValWKFqxRupWGNZ7bOc/VU9nYCc2IVijDGJJZZX/rOAxSLSGDgD6BbDWIwxJqHE7MpfVXfgNPouAU5U1e0R3F2lq46iqCrFClUr3qoUK1SteKtSrFC14o1IrKKqkSjXGGNMHLMnfI0xJgFV++QvIoeKyIpYxxEsEXlSRM6KdRxlEZF6IjJbRBaLyFOxjqc6cb+vi93XzUVkoYh8KCJTRERiHZ8371i9lrUXkQ9iFVNZAsT7toh0jlVMgfh8D1qLyAIR+VxE7gzXPqp98gceZH+X0rgmIr2Aw1T1nVjHUo5LgJdVtRdQV0Titsucz48oVUTedYcUuTzWsfkSkXrAVJxnYACuAa5T1ZOAZkCHWMXmy0+suCenSUCNWMUVSIB4LwJ+VtW4ujj0E+sNwJ2q+legn4g0DMd+qnXyF5GTgN3ApljHUh4RSQWeAXJE5OxYx1OOXOBIEcnESUq/xjYc//z8iEYAWe6QIgNEpG7MgvOvCDgf56FHVHWsqq52P2tAfD2UVCpW12XAR7EJp1yl4hWR+sBDwFYROTGWgfnh+7fNBY4SkUNxTqzbwrGTapv8RaQGMA4YHetYgjQM+BZ4ADhBREbEOJ6yfAK0Af4P+A7YGttwAvL9EfVl/5AinwFxdceiqjv89XoTkfOBb1R1YwzC8ss3VhFpAFyMc6cdd/z8bW8G3gCeBoaJyN9iE9mB/MQ6B+iN83v7CNgXjv1U2+SPk/Qnq+q2WAcSpM7AFFXdBLwMxNvViLd7gWtVdTxO8r8sxvH45edH5DukyKHRj6piRKQ1cBtwU4xDKc99wBhVLYx1IEHqjJMfNuFcEPSNbThlugsYrqpjcaqwTw1HodU5+Z8CXC8iC4FjReTZGMdTnh+B1u7rLsDaGMZSnlpABxFJBroCVaW/cLlDisQTt9rqNeDyCD8HEw59gPu9fm/3xDie8lSl31tjoJmIpAF/IUy/t1g+4RtRqtrb81pEFqrqlbGMJwjPAc+LyFAgFRgc43jKMgF4AWfQqM9xElRV4BlSZAbOkCJLYhtOuUYDzYHH3Y4+d6nqx7ENyT9Vbet57f7e4n2OjgeAZ0VkLJAHDIpxPGW5C1gINATexRkFudLsIS9T7bnJqK+ItABmA/OB7kA3VS2KbXTGxIYlf5NQ3LGkegJzq0BVijERY8nfGGMSUFw3eBljjIkMS/7GGJOALPkbUw4R2S0in/j8Wysi13mt8y8R6ecOIbHCXbbdHZsnJ54eIjIGqnFXT2PCaK2q9vReICJ34D5pKSInA8OBs3AevT9CRK4C1ri9jO4G9kYzYGPKY1f+xpQvUHfQIgBVXYAzTMBNqtoXZyiGZ4Di6IRnTMXZlb8x5WvsPrnqrQXwT59lj4jINq/3h7vbtST+HygzCcaSvzHlW+de0Zdwq318zQPWAJ6nyTcD1+IMyWtMXLHkb0z5ypxExR2B9QKcIZfbAK1E5HpgJ3AwzlhIxsQVS/7GlC9Q8k8CUNXHRaQQZ5yjukB9IBn4UFU/EZFTohOmMcGz5G9M+VoEqPO/F0omDTodmILzm3oWZ9atoSJSG2fCm0+jFq0xQbDkb0z5fg9Q5+/5/azCGW+9GNgrIncB/VR1jTvb2R6swdfEGRvbxxhjEpD18zfGmARkyd8YYxKQJX9jjElAlvyNMSYBWfI3xpgEZMnfGGMS0P8DJ7+RlfdRH48AAAAASUVORK5CYII=\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "# 04_maximum_minimum_temperatures\n",
    "import matplotlib.pyplot as plt\n",
    "import numpy as np\n",
    "plt.rcParams['font.sans-serif'] = ['SimHei']\n",
    "plt.rcParams['axes.unicode_minus'] = False\n",
    "x = np.arange(4, 19)\n",
    "y_max =[32, 33, 34, 34, 33, 31, 30, 29, 30, 29, 26, 23, 21, 25,  31]\n",
    "y_min = [19, 19, 20, 22, 22, 21, 22, 16, 18, 18, 17, 14, 15, 16 , 16]\n",
    "# 可以调用多次plot() 函数\n",
    "plt.plot(x, y_max, marker='o', label='最高温度')\n",
    "plt.plot(x, y_min, marker='o', label='最低温度')\n",
    "# 为图表添加注释并设置字体的样式\n",
    "x_temp = 4\n",
    "for y_h, y_l in zip(y_max, y_min):\n",
    "    plt.text(x_temp-0.3, y_h  + 0.7, y_h, family='SimHei', fontsize=8, fontstyle='normal')\n",
    "    plt.text(x_temp-0.3, y_l  + 0.7, y_l, family='SimHei', fontsize=8, fontstyle='normal')\n",
    "    x_temp  += 1\n",
    "plt.title('未来15天最高气温和最低气温的走势')\n",
    "plt.xlabel('日期')\n",
    "plt.ylabel('温度($^\\circ$C)')\n",
    "plt.ylim(0, 40)\n",
    "plt.legend()\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# 4.6　切换主题风格"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "['Solarize_Light2', '_classic_test_patch', 'bmh', 'classic', 'dark_background', 'fast', 'fivethirtyeight', 'ggplot', 'grayscale', 'seaborn', 'seaborn-bright', 'seaborn-colorblind', 'seaborn-dark', 'seaborn-dark-palette', 'seaborn-darkgrid', 'seaborn-deep', 'seaborn-muted', 'seaborn-notebook', 'seaborn-paper', 'seaborn-pastel', 'seaborn-poster', 'seaborn-talk', 'seaborn-ticks', 'seaborn-white', 'seaborn-whitegrid', 'tableau-colorblind10']\n"
     ]
    }
   ],
   "source": [
    "import matplotlib.style as ms\n",
    "print(ms.available)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.plot([1, 2, 3], [3, 4, 5], marker='*', markersize=20, markerfacecolor='y')\n",
    "ms.use('seaborn-dark')"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# 4.7　填充区域"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 4.7.1　填充多边形或曲线之间的区域"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 24,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.collections.PolyCollection at 0x588d820>"
      ]
     },
     "execution_count": 24,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "import numpy as np\n",
    "import matplotlib.pyplot as plt\n",
    "x = np.linspace(0, 8 * np.pi, 1000)\n",
    "sin_y = np.sin(x)\n",
    "cos_y = np.cos(1.5 * x / np.pi) / 2\n",
    "plt.plot(x, sin_y)\n",
    "plt.plot(x, cos_y)\n",
    "plt.fill_between(x, cos_y, sin_y, cos_y < sin_y, color='dodgerblue', alpha=0.5)\n",
    "plt.fill_between(x, cos_y, sin_y, cos_y > sin_y, color='orangered', alpha=0.5)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 4.7.2　实例5：彩色的“雪花”"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 27,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "# 05_colorful_snowflakes\n",
    "import numpy as np\n",
    "import matplotlib.pyplot as plt\n",
    "def koch_snowflake(order, scale=10):\n",
    "    def _koch_snowflake_complex(order):\n",
    "        if order == 0:\n",
    "            # 初始三角形\n",
    "            angles = np.array([0, 120, 240]) + 90\n",
    "            return scale / np.sqrt(3) * np.exp(np.deg2rad(angles)  * 1j)\n",
    "        else:\n",
    "            ZR = 0.5 - 0.5j  * np.sqrt(3) / 3\n",
    "            p1 = _koch_snowflake_complex(order - 1)  # 起点\n",
    "            p2 = np.roll(p1, shift=-1)               # 终点\n",
    "            dp = p2 - p1                             # 连接向量\n",
    "            new_points = np.empty(len(p1) * 4, dtype=np.complex128)\n",
    "            new_points[::4] = p1\n",
    "            new_points[1::4] = p1 + dp / 3\n",
    "            new_points[2::4] = p1 + dp * ZR\n",
    "            new_points[3::4] = p1 + dp / 3 * 2\n",
    "            return new_points\n",
    "    points = _koch_snowflake_complex(order)\n",
    "    x, y = points.real, points.imag\n",
    "    return x, y\n",
    "x, y = koch_snowflake(order=2)\n",
    "fig = plt.figure()\n",
    "ax = fig.add_subplot(111)\n",
    "ax.fill(x, y, facecolor='lightsalmon', edgecolor='orangered', linewidth=3)\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.8.3"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 4
}
